<html>
 <head>
  <meta charset="UTF-8">
 </head>
 <body>
  <h1 data-lake-id="lVRaC" id="lVRaC"><strong><span data-lake-id="uae66c090" id="uae66c090" class="lake-fontsize-24" style="color: rgb(38, 38, 38)">​</span></strong><span data-lake-id="u1c10a3ba" id="u1c10a3ba">面试者背景</span></h1>
  <p data-lake-id="uc24cafb4" id="uc24cafb4"><br></p>
  <p data-lake-id="u9d5d45e6" id="u9d5d45e6"><span data-lake-id="u75e84a67" id="u75e84a67" class="lake-fontsize-12">人脸识别SaaS公司、7年工作经验，云平台核心业务开发，架构师，负责了项目0到1搭建</span></p>
  <p data-lake-id="ua6a387a6" id="ua6a387a6"><span data-lake-id="ua639b966" id="ua639b966">​</span><br></p>
  <blockquote data-lake-id="u9afe6761" id="u9afe6761" class="lake-alert lake-alert-warning">
   <p data-lake-id="ue066a78f" id="ue066a78f" style="text-align: left"><span data-lake-id="uc7e042fd" id="uc7e042fd">支持1w并发是怎么做的？redis缓存、分库分表、future</span></p>
   <p data-lake-id="ue8a2ecd3" id="ue8a2ecd3" style="text-align: left"><span data-lake-id="u4eba5178" id="u4eba5178">如果让你支持</span><span data-lake-id="u705e7b78" id="u705e7b78">10w</span><span data-lake-id="ue1dc755c" id="ue1dc755c">并发，还能做哪些事情？消息队列解耦、打批处理、集群部署、</span></p>
   <p data-lake-id="uf5b31480" id="uf5b31480" style="text-align: left"><span data-lake-id="ucf991da3" id="ucf991da3">缓存用在什么场景？预热。用户的数据变了怎么感知？</span></p>
   <p data-lake-id="uffcf1eb4" id="uffcf1eb4" style="text-align: left"><span data-lake-id="uba8a56dc" id="uba8a56dc">一个租户特别大，热点问题怎么解决？缓存的热点问题怎么办？热</span><span data-lake-id="uefe41184" id="uefe41184">key</span><span data-lake-id="u41fad93d" id="u41fad93d">拆分、二级缓存。</span></p>
   <p data-lake-id="ue39d6899" id="ue39d6899" style="text-align: left"><span data-lake-id="u91cd6c60" id="u91cd6c60">近端缓存是什么？相比于本地缓存和分布式缓存有什么优缺点？一致性问题如何解决？</span></p>
   <p data-lake-id="u08fea5e8" id="u08fea5e8" style="text-align: left"><span data-lake-id="u39562341" id="u39562341">缓存和数据库的一致性该如何解决？更新数据库、删除缓存、延迟双删？为什么删除缓存而不是更新缓存？除了延迟双删，还有其他保证一致性方案吗？监听</span><span data-lake-id="u04b8abd5" id="u04b8abd5">Bin log</span><span data-lake-id="ub02d8684" id="ub02d8684">处理</span></p>
   <p data-lake-id="u4aa3051f" id="u4aa3051f" style="text-align: left"><span data-lake-id="u610100f5" id="u610100f5">如何实现一个本地缓存呢？</span><span data-lake-id="uf346491a" id="uf346491a">map</span><span data-lake-id="u6ab188f7" id="u6ab188f7">、</span><span data-lake-id="ufbd51b28" id="ufbd51b28">guava</span><span data-lake-id="ub9474875" id="ub9474875">，</span><span data-lake-id="uceef9989" id="uceef9989">LRU</span><span data-lake-id="ua6bbea43" id="ua6bbea43">是什么？</span><span data-lake-id="u6cc52381" id="u6cc52381">LFU</span><span data-lake-id="u39faff8d" id="u39faff8d">如何实现的？为啥要做缓存淘汰？</span></p>
   <p data-lake-id="u2047e0a1" id="u2047e0a1" style="text-align: left"><span data-lake-id="u821925ff" id="u821925ff">Redis</span><span data-lake-id="u8ff21901" id="u8ff21901">相比</span><span data-lake-id="u3682c140" id="u3682c140">memcached</span><span data-lake-id="u67a60fcc" id="u67a60fcc">优势？</span></p>
   <p data-lake-id="ue759fec1" id="ue759fec1" style="text-align: left"><span data-lake-id="u0a6e3c53" id="u0a6e3c53">Redis</span><span data-lake-id="uf8d3b209" id="uf8d3b209">的线程模型是怎样的？多路复用如何实现的？</span><span data-lake-id="u850552a1" id="u850552a1">redis</span><span data-lake-id="u6bfc202e" id="u6bfc202e">所有模块都是单线程的吗？为啥</span><span data-lake-id="uea6c0fc9" id="uea6c0fc9">6.0</span><span data-lake-id="ufaba9027" id="ufaba9027">要引入多线程？哪个模块是单线程的？多线程有什么缺点？</span></p>
   <p data-lake-id="u2ebe77e6" id="u2ebe77e6" style="text-align: left"><span data-lake-id="u0e7ba584" id="u0e7ba584">解决过</span><span data-lake-id="u921390f2" id="u921390f2">OOM</span><span data-lake-id="u3c54bb2e" id="u3c54bb2e">问题，介绍下过程。如何发现的？</span><span data-lake-id="ue1d687d8" id="ue1d687d8">dump</span><span data-lake-id="u8f2514e9" id="u8f2514e9">，如何解决的？</span></p>
   <p data-lake-id="u5396c88c" id="u5396c88c" style="text-align: left"><span data-lake-id="u22b8ae68" id="u22b8ae68">堆内存大小多大？</span><span data-lake-id="u3b3ea56e" id="u3b3ea56e">8G</span><span data-lake-id="u7764c4ab" id="u7764c4ab">，垃圾回收器用的是哪个？为什么不用</span><span data-lake-id="u4788eb0e" id="u4788eb0e">CMS</span><span data-lake-id="u16ce5b47" id="u16ce5b47">？</span><span data-lake-id="u1e5a3563" id="u1e5a3563">CMS</span><span data-lake-id="u838b57eb" id="u838b57eb">能降低</span><span data-lake-id="u6ea61a2e" id="u6ea61a2e">STW</span><span data-lake-id="uf2e7c654" id="uf2e7c654">？</span></p>
   <p data-lake-id="u9cbb4c00" id="u9cbb4c00" style="text-align: left"><span data-lake-id="uac0602cc" id="uac0602cc">G1 </span><span data-lake-id="u5344e637" id="u5344e637">有哪些特点？</span><span data-lake-id="u14721166" id="u14721166">garbage first</span><span data-lake-id="u761e0ca8" id="u761e0ca8">，</span><span data-lake-id="ud164da53" id="ud164da53">REGION</span><span data-lake-id="uc5067188" id="uc5067188">是什么？</span><span data-lake-id="ucada5b30" id="ucada5b30">STW</span><span data-lake-id="u24bdc431" id="u24bdc431">时长如何预测？小内存为啥不适合用</span><span data-lake-id="u918762c2" id="u918762c2">G1</span><span data-lake-id="u599d2e4f" id="u599d2e4f">呢？</span></p>
   <p data-lake-id="u5f27afe2" id="u5f27afe2" style="text-align: left"><span data-lake-id="ube25eb92" id="ube25eb92">FullGC</span><span data-lake-id="ubf7a3684" id="ubf7a3684">的触发条件是什么？老年代满了、空间分配担保失败、</span></p>
   <p data-lake-id="u538ae4b5" id="u538ae4b5" style="text-align: left"><span data-lake-id="u54219e18" id="u54219e18">什么是空间分配担保？</span></p>
   <p data-lake-id="uf5cc6708" id="uf5cc6708" style="text-align: left"><span data-lake-id="uee6442c8" id="uee6442c8">Dubbo</span><span data-lake-id="u7aab0a2e" id="u7aab0a2e">一次服务调用过程是怎样的？</span></p>
   <p data-lake-id="u4b10057c" id="u4b10057c" style="text-align: left"><span data-lake-id="u6c3bb4cb" id="u6c3bb4cb">如果让你实现一个</span><span data-lake-id="u21e16f3d" id="u21e16f3d">dubbo</span><span data-lake-id="u3d99f4bb" id="u3d99f4bb">，会考虑用那些技术解决哪些问题？</span></p>
   <p data-lake-id="uc42166d9" id="uc42166d9" style="text-align: left"><span data-lake-id="ubbc9f038" id="ubbc9f038">Zk</span><span data-lake-id="u3d041d57" id="u3d041d57">的选主过程是怎么样的？</span><span data-lake-id="u26111104" id="u26111104">zk</span><span data-lake-id="u0d9227d8" id="u0d9227d8">脑裂的问题？</span></p>
   <p data-lake-id="u2f093718" id="u2f093718" style="text-align: left"><span data-lake-id="uebaca442" id="uebaca442">Zk</span><span data-lake-id="u495f48fc" id="u495f48fc">可以用来做什么？用在哪些场景中？注册中心、分布式锁、分布式</span><span data-lake-id="uf169f614" id="uf169f614">ID</span><span data-lake-id="u6232cd8b" id="u6232cd8b">、</span><span data-lake-id="u04187741" id="u04187741">master</span><span data-lake-id="ube00db03" id="ube00db03">选举</span></p>
   <p data-lake-id="u80c56450" id="u80c56450" style="text-align: left"><span data-lake-id="u3f576082" id="u3f576082">Seata</span><span data-lake-id="u88cd22df" id="u88cd22df">框架用了干什么？分布式事务有哪些方案？</span><span data-lake-id="ucc23454e" id="ucc23454e">TCC</span><span data-lake-id="u4836c59d" id="u4836c59d">详细介绍下。</span><span data-lake-id="u41ca2231" id="u41ca2231">Commit</span><span data-lake-id="ubae17517" id="ubae17517">的时候失败了怎么办？</span></p>
   <p data-lake-id="u1fd7cb18" id="u1fd7cb18" style="text-align: left"><span data-lake-id="uf07f93f6" id="uf07f93f6">架构设计的时候，首先考虑的三个要素是什么？可扩展性、高内聚低耦合、可用性</span></p>
  </blockquote>
  <h1 data-lake-id="FChSX" id="FChSX"><span data-lake-id="ubd560f90" id="ubd560f90">题目解析</span></h1>
  <p data-lake-id="u26e467c5" id="u26e467c5"><br></p>
  <blockquote data-lake-id="u6899ae75" id="u6899ae75" class="lake-alert lake-alert-color4">
   <p data-lake-id="ubafa47f5" id="ubafa47f5"><span data-lake-id="ue215597e" id="ue215597e">支持1w并发是怎么做的？redis缓存、分库分表、future</span></p>
   <p data-lake-id="u331f5b57" id="u331f5b57"><span data-lake-id="ub4e746a4" id="ub4e746a4">如果让你支持10w并发，还能做哪些事情？消息队列解耦、打批处理、集群部署、</span></p>
  </blockquote>
  <p data-lake-id="u540cf76b" id="u540cf76b"><br></p>
  <p data-lake-id="u29c71471" id="u29c71471"><span data-lake-id="u7d8bcd92" id="u7d8bcd92">因为简历中他提到负责的业务支持了1W的并发， 所以面试的时候会重点关注，如何抗高并发。</span></p>
  <p data-lake-id="udad368c6" id="udad368c6"><span data-lake-id="ud04679e8" id="ud04679e8">​</span><br></p>
  <p data-lake-id="u63258d88" id="u63258d88"><span data-lake-id="ua14a759f" id="ua14a759f">接口性能优化方案：</span><a href="https://www.yuque.com/hollis666/vhr2ge/ifuuagaqo3yd8vqb" data-lake-id="u2a05caed" id="u2a05caed"><span data-lake-id="u54d38c1a" id="u54d38c1a">https://www.yuque.com/hollis666/vhr2ge/ifuuagaqo3yd8vqb</span></a></p>
  <p data-lake-id="ub3a9fd7f" id="ub3a9fd7f"><span data-lake-id="u489c4899" id="u489c4899">高并发思路：</span><a href="https://www.yuque.com/hollis666/vhr2ge/gfgqpua8gu3oag44" data-lake-id="uaa16fff6" id="uaa16fff6"><span data-lake-id="u49d650fa" id="u49d650fa">https://www.yuque.com/hollis666/vhr2ge/gfgqpua8gu3oag44</span></a></p>
  <p data-lake-id="u4b1154fe" id="u4b1154fe"><br></p>
  <blockquote data-lake-id="ubc709ae7" id="ubc709ae7" class="lake-alert lake-alert-color4">
   <p data-lake-id="uc24a11e6" id="uc24a11e6" style="text-align: left"><span data-lake-id="u86e5ad09" id="u86e5ad09">缓存用在什么场景？预热。用户的数据变了怎么感知？</span></p>
   <p data-lake-id="u4e637fce" id="u4e637fce" style="text-align: left"><span data-lake-id="uaec7fc1d" id="uaec7fc1d">一个租户特别大，热点问题怎么解决？缓存的热点问题怎么办？热</span><span data-lake-id="uafd73f5f" id="uafd73f5f">key</span><span data-lake-id="uec2c5026" id="uec2c5026">拆分、二级缓存。</span></p>
   <p data-lake-id="u3e496b72" id="u3e496b72" style="text-align: left"><span data-lake-id="u19fcdf3d" id="u19fcdf3d">近端缓存是什么？相比于本地缓存和分布式缓存有什么优缺点？一致性问题如何解决？</span></p>
   <p data-lake-id="ue26cfc9b" id="ue26cfc9b" style="text-align: left"><span data-lake-id="ucc1c0fda" id="ucc1c0fda">缓存和数据库的一致性该如何解决？更新数据库、删除缓存、延迟双删？为什么删除缓存而不是更新缓存？除了延迟双删，还有其他保证一致性方案吗？监听</span><span data-lake-id="u3dac72fc" id="u3dac72fc">Bin log</span><span data-lake-id="ud859c8b6" id="ud859c8b6">处理</span></p>
   <p data-lake-id="u5f918282" id="u5f918282" style="text-align: left"><span data-lake-id="u3b5aadf2" id="u3b5aadf2">如何实现一个本地缓存呢？map、guava，LRU是什么？LFU如何实现的？为啥要做缓存淘汰？</span></p>
  </blockquote>
  <p data-lake-id="ud51fcc72" id="ud51fcc72"><br></p>
  <p data-lake-id="u2eb50f05" id="u2eb50f05"><span data-lake-id="u2a74abf5" id="u2a74abf5">热点问题：</span><a href="https://www.yuque.com/hollis666/vhr2ge/lysd3t" data-lake-id="ucc1fcb9b" id="ucc1fcb9b"><span data-lake-id="uf35236a2" id="uf35236a2">https://www.yuque.com/hollis666/vhr2ge/lysd3t</span></a></p>
  <p data-lake-id="u56c82fde" id="u56c82fde"><span data-lake-id="ud20d428a" id="ud20d428a">缓存一致性问题：</span><a href="https://www.yuque.com/hollis666/vhr2ge/tmcgo0" data-lake-id="ud55139ff" id="ud55139ff"><span data-lake-id="u1262c064" id="u1262c064">https://www.yuque.com/hollis666/vhr2ge/tmcgo0</span></a></p>
  <p data-lake-id="u8cfb6299" id="u8cfb6299"><span data-lake-id="uc94916b7" id="uc94916b7">本地缓存：</span><a href="https://www.yuque.com/hollis666/vhr2ge/iy5loh8gvzlqolxo" data-lake-id="u177b2ba5" id="u177b2ba5"><span data-lake-id="uf9e0c047" id="uf9e0c047">https://www.yuque.com/hollis666/vhr2ge/iy5loh8gvzlqolxo</span></a></p>
  <p data-lake-id="uf8f6bf11" id="uf8f6bf11"><span data-lake-id="u49931946" id="u49931946">LRU:</span><a href="https://www.yuque.com/hollis666/vhr2ge/gl3fivks74z4d10e" data-lake-id="u7d60854f" id="u7d60854f"><span data-lake-id="uef92e80d" id="uef92e80d">https://www.yuque.com/hollis666/vhr2ge/gl3fivks74z4d10e</span></a></p>
  <p data-lake-id="ud854e3e6" id="ud854e3e6"><span data-lake-id="u8b4297b6" id="u8b4297b6">LRU实现：</span><a href="https://www.yuque.com/hollis666/vhr2ge/qk8y0w5wa0vpcyzp" data-lake-id="ua6c142f6" id="ua6c142f6"><span data-lake-id="ue2b63027" id="ue2b63027">https://www.yuque.com/hollis666/vhr2ge/qk8y0w5wa0vpcyzp</span></a></p>
  <p data-lake-id="ud5eccfa8" id="ud5eccfa8"><span data-lake-id="u3762ee46" id="u3762ee46">​</span><br></p>
  <p data-lake-id="u2588caf3" id="u2588caf3"><br></p>
  <blockquote data-lake-id="u4897c5b0" id="u4897c5b0" class="lake-alert lake-alert-color4">
   <p data-lake-id="u409968b0" id="u409968b0" style="text-align: left"><span data-lake-id="u76c4ee64" id="u76c4ee64">Redis</span><span data-lake-id="udf2fb52f" id="udf2fb52f">相比</span><span data-lake-id="ua850906e" id="ua850906e">memcached</span><span data-lake-id="ufc3db346" id="ufc3db346">优势？</span></p>
   <p data-lake-id="u28abaf73" id="u28abaf73" style="text-align: left"><span data-lake-id="u816b009a" id="u816b009a">Redis的线程模型是怎样的？多路复用如何实现的？redis所有模块都是单线程的吗？为啥6.0要引入多线程？哪个模块是单线程的？多线程有什么缺点？</span></p>
  </blockquote>
  <p data-lake-id="u6c3d734c" id="u6c3d734c"><br></p>
  <p data-lake-id="u7483f3d1" id="u7483f3d1"><span data-lake-id="u7cd85a31" id="u7cd85a31">Redis&amp;Memcached:</span><a href="https://www.yuque.com/hollis666/vhr2ge/ink6os3bm19gafx7" data-lake-id="u6ae6afb6" id="u6ae6afb6"><span data-lake-id="u6c463db6" id="u6c463db6">https://www.yuque.com/hollis666/vhr2ge/ink6os3bm19gafx7</span></a></p>
  <p data-lake-id="u73ef3365" id="u73ef3365"><span data-lake-id="u06f95437" id="u06f95437">Redis线程模型：</span><a href="https://www.yuque.com/hollis666/vhr2ge/lrhzxqbur0eywnfu" data-lake-id="u9acf94ae" id="u9acf94ae"><span data-lake-id="u5808d5e2" id="u5808d5e2">https://www.yuque.com/hollis666/vhr2ge/lrhzxqbur0eywnfu</span></a></p>
  <p data-lake-id="u7df62232" id="u7df62232"><span data-lake-id="u7881ab90" id="u7881ab90">Redis多线程：</span><a href="https://www.yuque.com/hollis666/vhr2ge/zfpgxa93bmn9png9" data-lake-id="u27f86ff5" id="u27f86ff5"><span data-lake-id="u808bea5a" id="u808bea5a">https://www.yuque.com/hollis666/vhr2ge/zfpgxa93bmn9png9</span></a></p>
  <p data-lake-id="u33c9651b" id="u33c9651b" style="text-align: left"><br></p>
  <blockquote data-lake-id="u1a84b0f5" id="u1a84b0f5" class="lake-alert lake-alert-color4">
   <p data-lake-id="u196c0223" id="u196c0223" style="text-align: left"><span data-lake-id="u80090a06" id="u80090a06">解决过OOM问题，介绍下过程。如何发现的？dump，如何解决的？</span></p>
  </blockquote>
  <p data-lake-id="uf753f623" id="uf753f623"><br></p>
  <p data-lake-id="u6cfce28f" id="u6cfce28f"><span data-lake-id="u75321356" id="u75321356">OOM问题排查：</span><a href="https://www.yuque.com/hollis666/vhr2ge/vdnaxh" data-lake-id="uba58cdc2" id="uba58cdc2"><span data-lake-id="u3eea7db3" id="u3eea7db3">https://www.yuque.com/hollis666/vhr2ge/vdnaxh</span></a></p>
  <p data-lake-id="uc564a4a7" id="uc564a4a7"><br></p>
  <blockquote data-lake-id="uf411ffc7" id="uf411ffc7" class="lake-alert lake-alert-color4">
   <p data-lake-id="ua9f0e5ff" id="ua9f0e5ff" style="text-align: left"><span data-lake-id="u6ffb11cf" id="u6ffb11cf">堆内存大小多大？</span><span data-lake-id="u8467963e" id="u8467963e">8G</span><span data-lake-id="u130c26b0" id="u130c26b0">，垃圾回收器用的是哪个？为什么不用</span><span data-lake-id="u6b9b7450" id="u6b9b7450">CMS</span><span data-lake-id="uc5ac6796" id="uc5ac6796">？</span><span data-lake-id="u85d32e74" id="u85d32e74">CMS</span><span data-lake-id="uc0da026a" id="uc0da026a">能降低</span><span data-lake-id="uda2c2ea4" id="uda2c2ea4">STW</span><span data-lake-id="u1de2aa1c" id="u1de2aa1c">？</span></p>
   <p data-lake-id="u42ef87c4" id="u42ef87c4" style="text-align: left"><span data-lake-id="u189c93cd" id="u189c93cd">G1 </span><span data-lake-id="uc2d229f3" id="uc2d229f3">有哪些特点？</span><span data-lake-id="ub8bfd6cf" id="ub8bfd6cf">garbage first</span><span data-lake-id="u35e1d7df" id="u35e1d7df">，</span><span data-lake-id="u0564bc4f" id="u0564bc4f">REGION</span><span data-lake-id="u66e11b91" id="u66e11b91">是什么？</span><span data-lake-id="ua31d4557" id="ua31d4557">STW</span><span data-lake-id="u2cab92cd" id="u2cab92cd">时长如何预测？小内存为啥不适合用</span><span data-lake-id="uabb4ea76" id="uabb4ea76">G1</span><span data-lake-id="ucfe4ac64" id="ucfe4ac64">呢？</span></p>
   <p data-lake-id="u5922171b" id="u5922171b" style="text-align: left"><span data-lake-id="u4553a1fc" id="u4553a1fc">FullGC</span><span data-lake-id="u954ae18c" id="u954ae18c">的触发条件是什么？老年代满了、空间分配担保失败、</span></p>
   <p data-lake-id="ud48b91fe" id="ud48b91fe" style="text-align: left"><span data-lake-id="u6748447b" id="u6748447b">什么是空间分配担保？</span></p>
  </blockquote>
  <p data-lake-id="uc579f4b6" id="uc579f4b6"><br></p>
  <p data-lake-id="u57d7d8be" id="u57d7d8be"><span data-lake-id="u4c6c6e55" id="u4c6c6e55">垃圾回收器区别：</span><a href="https://www.yuque.com/hollis666/vhr2ge/nqra2l" data-lake-id="u9ad03902" id="u9ad03902"><span data-lake-id="u7984945d" id="u7984945d">https://www.yuque.com/hollis666/vhr2ge/nqra2l</span></a></p>
  <p data-lake-id="u01faf25e" id="u01faf25e"><span data-lake-id="ucf258b14" id="ucf258b14">G1：</span><a href="https://www.yuque.com/hollis666/vhr2ge/hgquufzt6m9psmtp" data-lake-id="u03bde734" id="u03bde734"><span data-lake-id="ucec32a57" id="ucec32a57">https://www.yuque.com/hollis666/vhr2ge/hgquufzt6m9psmtp</span></a></p>
  <p data-lake-id="u5fb98d2a" id="u5fb98d2a"><span data-lake-id="uef3a9084" id="uef3a9084">FullGC触发条件&amp;分配担保：</span><a href="https://www.yuque.com/hollis666/vhr2ge/akr0h4yk44r57g5x" data-lake-id="ufe50d0df" id="ufe50d0df"><span data-lake-id="ufc8acd15" id="ufc8acd15">https://www.yuque.com/hollis666/vhr2ge/akr0h4yk44r57g5x</span></a></p>
  <p data-lake-id="u5d868b33" id="u5d868b33"><br></p>
  <blockquote data-lake-id="u8fdb86d8" id="u8fdb86d8" class="lake-alert lake-alert-color4">
   <p data-lake-id="u53525d3e" id="u53525d3e" style="text-align: left"><span data-lake-id="u57febb50" id="u57febb50">Dubbo</span><span data-lake-id="u13cc88d0" id="u13cc88d0">一次服务调用过程是怎样的？</span></p>
   <p data-lake-id="u806d93c5" id="u806d93c5" style="text-align: left"><span data-lake-id="uc431239f" id="uc431239f">如果让你实现一个dubbo，会考虑用那些技术解决哪些问题？</span></p>
  </blockquote>
  <p data-lake-id="u3626436b" id="u3626436b"><br></p>
  <p data-lake-id="u84cf283e" id="u84cf283e"><span data-lake-id="ub51ac57f" id="ub51ac57f">Dubbo调用过程：</span><a href="https://www.yuque.com/hollis666/vhr2ge/io1pkwin43mkwaup" data-lake-id="u3d148eae" id="u3d148eae"><span data-lake-id="uf8416e97" id="uf8416e97">https://www.yuque.com/hollis666/vhr2ge/io1pkwin43mkwaup</span></a></p>
  <p data-lake-id="u2fd19648" id="u2fd19648"><span data-lake-id="u01e88f14" id="u01e88f14">如何实现一个RPC框架：</span><a href="https://www.yuque.com/hollis666/vhr2ge/ve4eci8re6blimh9" data-lake-id="ue218952a" id="ue218952a"><span data-lake-id="uea3fa6fc" id="uea3fa6fc">https://www.yuque.com/hollis666/vhr2ge/ve4eci8re6blimh9</span></a></p>
  <p data-lake-id="uce33add6" id="uce33add6" style="text-align: left"><br></p>
  <blockquote data-lake-id="ue7270bad" id="ue7270bad" class="lake-alert lake-alert-color4">
   <p data-lake-id="ucee02127" id="ucee02127" style="text-align: left"><span data-lake-id="ubd5c3be3" id="ubd5c3be3">Zk</span><span data-lake-id="u086185e0" id="u086185e0">的选主过程是怎么样的？</span><span data-lake-id="uae484609" id="uae484609">zk</span><span data-lake-id="u7113cef7" id="u7113cef7">脑裂的问题？</span></p>
   <p data-lake-id="u85d0d296" id="u85d0d296" style="text-align: left"><span data-lake-id="u82537371" id="u82537371">Zk可以用来做什么？用在哪些场景中？注册中心、分布式锁、分布式ID、master选举</span></p>
  </blockquote>
  <p data-lake-id="u34279a5b" id="u34279a5b"><br></p>
  <p data-lake-id="u8c0cd6f6" id="u8c0cd6f6"><span data-lake-id="uc7ce3bfa" id="uc7ce3bfa">zk选主：</span><a href="https://www.yuque.com/hollis666/vhr2ge/tsfqf463g4mbh41k" data-lake-id="ua0f49c22" id="ua0f49c22"><span data-lake-id="u31ef4088" id="u31ef4088">https://www.yuque.com/hollis666/vhr2ge/tsfqf463g4mbh41k</span></a></p>
  <p data-lake-id="u41b03ea6" id="u41b03ea6"><span data-lake-id="u7eacd421" id="u7eacd421">zk脑裂：</span><a href="https://www.yuque.com/hollis666/vhr2ge/xuxwgui3f8ti2a0y" data-lake-id="u1e1e6473" id="u1e1e6473"><span data-lake-id="u1263a534" id="u1263a534">https://www.yuque.com/hollis666/vhr2ge/xuxwgui3f8ti2a0y</span></a></p>
  <p data-lake-id="u54d7e5b0" id="u54d7e5b0"><span data-lake-id="uecd5eb79" id="uecd5eb79">zk使用场景：</span><a href="https://www.yuque.com/hollis666/vhr2ge/bxldoz3kvfpdsv1g" data-lake-id="u6660928e" id="u6660928e"><span data-lake-id="ua56f6a5a" id="ua56f6a5a">https://www.yuque.com/hollis666/vhr2ge/bxldoz3kvfpdsv1g</span></a></p>
  <p data-lake-id="udd1896b8" id="udd1896b8"><br></p>
  <blockquote data-lake-id="u9d2053d0" id="u9d2053d0" class="lake-alert lake-alert-color4">
   <p data-lake-id="ue85f2a68" id="ue85f2a68" style="text-align: left"><span data-lake-id="u413a8b88" id="u413a8b88">Seata框架用了干什么？分布式事务有哪些方案？TCC详细介绍下。Commit的时候失败了怎么办？</span></p>
  </blockquote>
  <p data-lake-id="uad4654ae" id="uad4654ae"><br></p>
  <p data-lake-id="ud43b3a3d" id="ud43b3a3d"><span data-lake-id="u6e127851" id="u6e127851">分布式事务：</span><a href="https://www.yuque.com/hollis666/vhr2ge/yr0lu6" data-lake-id="u5e41b50c" id="u5e41b50c"><span data-lake-id="ubf18989f" id="ubf18989f">https://www.yuque.com/hollis666/vhr2ge/yr0lu6</span></a></p>
  <p data-lake-id="ueff0527e" id="ueff0527e"><span data-lake-id="u1099e0be" id="u1099e0be">TCC：</span><a href="https://www.yuque.com/hollis666/vhr2ge/xhvbak3ouy6xqiml" data-lake-id="u63b2decc" id="u63b2decc"><span data-lake-id="u95b0065e" id="u95b0065e">https://www.yuque.com/hollis666/vhr2ge/xhvbak3ouy6xqiml</span></a></p>
  <p data-lake-id="u7e8a1a3f" id="u7e8a1a3f"><br></p>
  <blockquote data-lake-id="u3db1b0a1" id="u3db1b0a1" class="lake-alert lake-alert-color4">
   <p data-lake-id="uffbcc225" id="uffbcc225" style="text-align: left"><span data-lake-id="u6c6b6ff5" id="u6c6b6ff5">架构设计的时候，首先考虑的三个要素是什么？可扩展性、高内聚低耦合、可用性</span></p>
  </blockquote>
  <p data-lake-id="ud043820b" id="ud043820b" style="text-align: left"><br></p>
  <p data-lake-id="u5f8c325c" id="u5f8c325c" style="text-align: left"><span data-lake-id="u595ab812" id="u595ab812">架构设计原则：</span><a href="https://www.yuque.com/hollis666/vhr2ge/uedwqv2xttnp2ze4" data-lake-id="u26d5d194" id="u26d5d194"><span data-lake-id="ua7f50587" id="ua7f50587">https://www.yuque.com/hollis666/vhr2ge/uedwqv2xttnp2ze4</span></a></p>
  <p data-lake-id="ue58f2568" id="ue58f2568" style="text-align: left"><a href="https://www.yuque.com/hollis666/vhr2ge/impo4wc9yzn3mmu2" data-lake-id="u4195b899" id="u4195b899"><span data-lake-id="uc7561ea0" id="uc7561ea0">https://www.yuque.com/hollis666/vhr2ge/impo4wc9yzn3mmu2</span></a></p>
 </body>
</html>